iT邦幫忙

2021 iThome 鐵人賽

DAY 18
1
自我挑戰組

30天 從0開始的 Python 全方面應用系列 第 18

[day-18] 認識Python的資料結構!(Part .5)

  • 分享至 

  • xImage
  •  

認識dict(字典)

  dict(字典)跟set(集合)很像,不過dict(字典)採用的元素儲存方式是以 「key:value」 成對的方式來儲存,其中key代表的是 關鍵字 ,而value代表的是 。在dict(字典)中,key必須是唯一的,但是值可以是重複的。
  
 換一種方式思考,當我們背英文單字的時候,一個單字一定會有個相對應的解釋,但是許多單詞的意思可能是一致的,這樣就大概就了解了吧(應該吧?

  字典是使用大括號來表示,其中key和value可以是 任意型別 ,如果要建立空字典可以使用 {} 或是 dict()

注意!當dict(字典)中輸入重複的key(關鍵字),將由後者(較新)的取代前者

test1 = {'Apple':28000, 'Acer':22000, 'Asus':38625, 'Apple':25900}
print(test1)

輸出結果:
{'Apple': 25900, 'Acer': 22000, 'Asus': 38625}

在這段輸出中我們可以發現後面的Apple重新定義了值,因此前面的值就被取代了

範例 - 早餐店的價格

 {'蛋餅':20, '豆漿':15, '紅茶':15, '起司蛋餅':25, '豬排蛋餅':28, '蔬菜蛋餅':25 }

在這個範例中,我們發現了豆漿跟紅茶的價格是一致的,而起司蛋餅與蔬菜蛋餅的價格也是一致的,這說明了兩件事, 第一,豬排比較貴,第二 物品對應的值 可以是重複的 。我想平常的狀況應該一個物品不會同時對應兩個價錢吧?


  為了防止 世界被破壞 出現重複的key(關鍵字),因此dict(字典)也不允許資料可變更的容器放入key這個元素中這點跟set(集合)蠻像的,然而value(值)並 不受此影響 ,因為是可變更的。


dict(字典)中的索引

  剛我們提到了key必須是唯一的不可重複,因此我們可以利用這種特性,方便操作index(索引)。

範例 - 索引的操作

使用索引符號 [] 取值

testdict1 = {'蛋餅':20, '豆漿':15, '起司蛋餅':25, '蔬菜蛋餅':25 } #建立一個字典
testdict1['豆漿'] = 30 #重新賦予'豆漿'對應的值
testdict1['紅茶'] = 20 #新增一個元素
print(testdict1)

輸出:

{'蛋餅': 20, '豆漿': 30, '起司蛋餅': 25, '蔬菜蛋餅': 25, '紅茶': 20}

上一篇
[day-17] 認識Python的資料結構!(Part .4)
下一篇
[day-19] 認識Python的資料結構!(Part .6)
系列文
30天 從0開始的 Python 全方面應用28
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言